package org.xtext.runtime.formula;

import java.util.Map;
import java.util.Set;

import org.xtext.runtime.term.Variable;
import org.xtext.runtime.util.Bindings;
import org.xtext.runtime.util.ILogicVisitor;


public interface IFormula {
	public IFormula copy();
	public Set<Variable> variables();
	public IFormula apply(Bindings bindings);
	public IFormula copy(Map<String, Variable> vars);
	public boolean hasFreeVariables();
	public Object accept(ILogicVisitor visitor);
}
